import java.io.File;
import java.util.Scanner;

public class demo6 {
    //练习：根据用户输入的关键词，扫描用户指定的路径，列出符合符合关键词的普通文件
    //询问是否需要删除
    static Scanner scanner = new Scanner(System.in);

    public static void main(String[] args) {
        //用户输入目录路径
        System.out.println("请输入目录路径");
        String path = scanner.next();
        //检查路径
        File file = new File(path);
        if(!file.isDirectory()){
            System.out.println("您输入的路径有误");
            return;
        }
        //输入关键词
        System.out.println("请输入关键词");
        String key = scanner.next();
        //通过方法递归找到文件
        scan(file,key);
    }

    private static void scan(File file, String key) {
        //先列出所有的文件和目录
        File[] files = file.listFiles();
        if(files==null){
            return;
        }
        //判断类型
        for(File f:files){
            //打印日志,方便观察结果
            System.out.println("正在检查："+f.getAbsolutePath());
            if(f.isDirectory()){
                //继续递归调用
                scan(f,key);
            }else{
                check(f,key);
            }
        }
    }

    private static void check(File f, String key) {
        //先判断名字
        if(f.getName().contains(key)){
            //询问是否删除
            System.out.println(f.getAbsolutePath()+" 是否删除 y/n");
            String ret = scanner.next();
            if(ret.equals("Y")|ret.equals("y")){
                f.delete();
                System.out.println("文件已删除");
            }else {
                System.out.println("取消删除");
            }
        }else {
            return;
        }
    }
}
